//
//  ZQQDownLoaderManager.h
//  ZQQDownLoader
//
//  Created by MoDao-iOS on 2017/7/18.
//  Copyright © 2017年 MoDao-iOS. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "ZQQDownLoader.h"

@interface ZQQDownLoaderManager : NSObject

// 单例
// 1. 无论通过怎样的方式, 创建出来, 只有一个实例(alloc  copy mutableCopy)
// 2. 通过某种方式, 可以获取同一个对象,但是, 也可以通过其他方式, 创建出来新的对象
+ (instancetype)shareInstance;

// 根据URL下载资源
- (ZQQDownLoader *)downLoadWithURL: (NSURL *)url;

// 获取url对应的downLoader
- (ZQQDownLoader *)getDownLoaderWithURL: (NSURL *)url;

// 根据URL下载资源
// 监听下载信息, 成功, 失败回调
- (void)downLoader:(NSURL *)url downLoadInfo:(DownLoadInfoType)downLoadInfo progress:(ProgressBlockType)progressBlock success:(SuccessBlockType)successBlock failed:(FailedBlockType)failedBlock;

// 根据URL，暂停某个下载
- (void)pauseWithURL:(NSURL *)url;
// 根据URL，恢复某个下载
- (void)resumeWithURL:(NSURL *)url;
// 根据URL，取消某个下载
- (void)cancelWithURL:(NSURL *)url;
- (void)cancelAndClearWithURL: (NSURL *)url;
// 暂停所有
- (void)pauseAll;
// 回复所有的下载
- (void)resumeAll;

@end
